package com.xinzhi.model;

import com.baomidou.mybatisplus.annotation.IdType;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableId;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 盲盒表
 * </p>
 *
 * @author laohan
 * @since 2024-01-08
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value="Boxes对象", description="盲盒表")
public class Boxes implements Serializable {

private static final long serialVersionUID=1L;

    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    private String uuid;

    @ApiModelProperty(value = "标题")
    private String title;

    @ApiModelProperty(value = "标签数组")
    private String tags;

    @ApiModelProperty(value = "封面")
    private String thumb;

    @ApiModelProperty(value = "详情图")
    private String detailImages;

    @ApiModelProperty(value = "分类id数组")
    private String categoryIds;

    @ApiModelProperty(value = "扁平风顶部图片背景")
    private String boxTopImage;

    @ApiModelProperty(value = "盒子背景图片")
    private String roomBgImage;

    @ApiModelProperty(value = "未开的盒子封面")
    private String skuThumb;

    @ApiModelProperty(value = "3d立方体图")
    private String sku3dImage;

    @ApiModelProperty(value = "人民币价格")
    private Integer moneyPrice;

    @ApiModelProperty(value = "积分价格")
    private Integer scorePrice;

    @ApiModelProperty(value = "人民币优惠价")
    private Integer discountMoneyPrice;

    @ApiModelProperty(value = "积分优惠价")
    private Integer discountScorePrice;

    @ApiModelProperty(value = "直接推广人红包佣金")
    private Integer brokerageMoney;

    @ApiModelProperty(value = "直接推广人积分佣金")
    private Integer brokerageScore;

    @ApiModelProperty(value = "上级推广人红包佣金")
    private Integer secondBrokerageMoney;

    @ApiModelProperty(value = "上级推广人积分佣金")
    private Integer secondBrokerageScore;

    @ApiModelProperty(value = "商品奖励红包")
    private Integer rewardMoney;

    @ApiModelProperty(value = "商品奖励积分")
    private Integer rewardScore;

    @ApiModelProperty(value = "小盒款式数量 6 8 9 12 16")
    private Integer skuTotal;

    @ApiModelProperty(value = "列表权重")
    private Integer listWeight;

    @ApiModelProperty(value = "是否预售")
    private Boolean isPresell;

    @ApiModelProperty(value = "预售日期")
    private Date presellDate;

    @ApiModelProperty(value = "房间数量")
    private Integer roomTotal;

    @ApiModelProperty(value = "总已抽次数")
    private Integer sales;

    @ApiModelProperty(value = "上一次开出隐藏款的销量位置")
    private Integer lastHiddenSalesIndex;

    @ApiModelProperty(value = "返售次数")
    private Integer returnTotal;

    @ApiModelProperty(value = "sku配比模式 1为1:1配比， 2为按库存配比")
    private Integer skuRatioType;

    @ApiModelProperty(value = "开盒算法 1为按库存比例随机  2为优化开出该房间中未开过的SKU")
    private Integer openBoxStrategy;

    @ApiModelProperty(value = "前端展示模式 1为抽盒机 2为扭蛋机")
    private Integer displayType;

    @ApiModelProperty(value = "开盒模式 1是在线开盒  2是线下开盒")
    private Integer openMode;

    @ApiModelProperty(value = "是否新品")
    private Boolean isNewest;

    @ApiModelProperty(value = "是否推荐到首页")
    private Boolean isRecommend;

    @ApiModelProperty(value = "1为正常 0为下架")
    private Integer status;

    @ApiModelProperty(value = "是否开启线下核销")
    private Boolean isOfflineUseable;

    @ApiModelProperty(value = "是否包邮")
    private Boolean isFreeCarriage;

    @ApiModelProperty(value = "是否需要收货地址")
    private Boolean isNeedAddress;

    private Date deletedAt;

    private Date createdAt;

    private Date updatedAt;

    @ApiModelProperty(value = "角标id")
    private Integer imageTagId;

    @ApiModelProperty(value = "摇一摇提示限制次数")
    private Integer freeTipsLimit;

    @ApiModelProperty(value = "是否显示提示卡")
    private Boolean isShowBox;

    @ApiModelProperty(value = "是否显示排除卡")
    private Boolean isExcludeBox;

    @ApiModelProperty(value = "是否显示隐藏款榜单")
    private Boolean isHiddenSkuRank;

    @ApiModelProperty(value = "是否是隐藏款")
    private Boolean isNormalSkuRank;

    @ApiModelProperty(value = "大盒后挡板")
    private String bigBoxBottom;

    @ApiModelProperty(value = "大盒前挡板")
    private String bigBoxTop;

    @ApiModelProperty(value = "大箱子中小箱子图片")
    private String smallBoxImage;

    @ApiModelProperty(value = "NULL或1为亮色调 2为暗色调")
    private Integer bgColorMode;

    @ApiModelProperty(value = "1默认为3D版 2为扁平风版")
    private Integer themeMode;

    @ApiModelProperty(value = "库存")
    private Integer stock;

    @ApiModelProperty(value = "标记时间")
    private Date markedAt;

    @ApiModelProperty(value = "预售模式，0为预售前不可购买， 1为预售前可购买")
    private Integer presellMode;

    @ApiModelProperty(value = "下单奖励")
    private String orderReward;

    @ApiModelProperty(value = "开盒提示")
    private String tips;

    @ApiModelProperty(value = "绑定的天猫天盒商品id")
    private String tmailProductId;

    @ApiModelProperty(value = "已开序号次数")
    private Integer openIndex;

    @ApiModelProperty(value = "关联的抽奖活动id")
    private Integer lotteryId;

    @ApiModelProperty(value = "每人每天限制使用的排除卡")
    private Integer excludeCardPerDay;

    @ApiModelProperty(value = "每人每天限制使用的透视卡")
    private Integer showCardPerDay;

    @ApiModelProperty(value = "是否开启邀请机制")
    private Boolean isInviteEnabled;

    @ApiModelProperty(value = "邀请规则")
    private String inviteRule;

    @ApiModelProperty(value = "拉新用户数")
    private Integer inviteUserTotal;

    @ApiModelProperty(value = "参与用户数")
    private Integer joinUserTotal;


}
